package com.meter.data.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import com.meter.common.annotation.Excel;
import javax.validation.constraints.NotBlank;
import com.meter.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 告警记录对象 alarm_data
 * 
 * @author ruoyi
 * @date 2025-05-15
 */
@Data
@Accessors(chain = true)
@TableName("alarm_data")
public class AlarmData extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 记录id */
    @TableId(type = IdType.AUTO)
    private Long recordId;

    @TableField(exist = false)
    private Long houseId;

    @TableField(exist = false)
    @Excel(name = "所属住房")
    private String houseName;

    /** 表id */
    private Long meterId;

    /** 表号 */
    @Excel(name = "表号")
    private String meterNo;

    /** 告警id */
    private Long alarmId;

    /** 告警名称 */
    @TableField(exist = false)
    @Excel(name = "告警名称")
    private String alarmName;

    /** 告警数据 */
    @TableField(exist = false)
    @Excel(name = "告警数据", dictType = "alarm_field")
    private String alarmField;

    /** 告警类型 */
    @TableField(exist = false)
    @Excel(name = "告警类型", dictType = "alarm_type")
    private String alarmType;

    /** 告警值 */
    @TableField(exist = false)
    @Excel(name = "告警值")
    private Double alarmValue;

    /** 实际值 */
    @Excel(name = "实际值")
    private Double diffValue;

    @Excel(name = "告警时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 备注 */
    @Excel(name = "告警内容")
    private String remark;


}
